iT邦幫忙

2024 iThome 鐵人賽

DAY 2
0
自我挑戰組

讓我們一起與turboRepo共舞系列 第 2

團隊使用monorepo 解決了什麼痛點?

  • 分享至 

  • xImage
  •  

前端團隊在實際專案開發上遇到的痛點問題:

  • 團隊已專案為導向,一個專案一個倉庫,新專案與舊專案相互獨立,無法重複使用已有元件庫
  • 從專案中累積的經驗依賴項目,沒有提煉出來,無法快速重複使用
  • 封裝的組件無法共用,無組件文檔
  • 使用微前端,採用相同架構時,網路請求、工具類別、佈局元件等都需要重新開發
  • 開始新專案時,要從舊專案複製基本功能出來

團隊使用monorepo(turborepo)是如何解決上述痛點的?

  • 將一些做好的元件抽離成獨立項目,例如流程編排、動態表單,其他項目使用時引入即可(可能涉及重構)
  • 建構UI庫項目,應用項目可直接引入使用,同時具備完整的文檔
  • 將Request等工具類、或加密等抽離成獨立項目,並由其他項目重複使用

需要先理解 monorepo 是如何運作的?

monorepo的主要建構的scope是work space。

您建立的每個應用程式和軟體包都將在自己的work space中,並有自己的package.json
工作區可以相互依賴,例如docs工作區可以依賴shared-utils:

{
  "dependencies": {
    "shared-utils": "*"
  }
}

同時,根資料夾稱為根工作區並且存在一個package.json,它的作用是:

  • 指定存在於整個monorepo 中的依賴項
  • 新增運行在整個monorepo 上的任務

之後會在後續的文章討論,利用如何用pnpm建立的自己的monorepo專案


上一篇
我們來看看MonoRepo彼此的愛恨情仇
下一篇
TurboRepo介紹
系列文
讓我們一起與turboRepo共舞30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言